package sany.iec.entity;

import com.serotonin.modbus4j.ModbusSlaveSet;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.ToString;
import org.openmuc.j60870.Server;
import sany.iec.enums.EnableEnum;
import sany.iec.enums.ServerType;
import java.util.List;

/**
 * @Author 托马斯
 * @Date 2025/7/5 22:28
 * @Description Server
 */
@AllArgsConstructor
@Data
@ToString
@Builder
public class ServerEntity {

    /**
     * IEC104服务的实例
     */
    private Server IEC104Server;

    /**
     * MODBUS服务的实例
     */
    private ModbusSlaveSet ModbusServerSet;

    /**
     * 将配置的子table名称进行保留，便于进行消息提示
     */
    private String tableName;

    private ServerType serverType;

    private Integer port;

    private Integer modbusId;

    /**
     * 表示服务是否启用
     */
    private EnableEnum enable;

    /**
     * SVG的装机容量（如果是SVG必须填写，如果不填写默认值给10Mvar）
     */
    private Float svgCapacity;

    /**
     * 能管的装机容量
     */
    private Float InstalledCapacity;

    /**
     * 给寄存器开辟空间的长度
     */
    private Integer dataLength;

    private List<DataEntity> listData;

}
